// 线索二叉树  把左/右孩子为空的节点 的指针指向(前中后序遍历 顺序的) 前驱/后继
// 这样的左、右孩子指针 叫 前驱线索、后继线索
// 这样的二叉树 叫 先/中/后序二叉树
// 避免每次遍历都要从根节点开始


typedef struct BiTNode{
    ElemType data;
    struct BiTNode *lchild, *rchild;

}BiTNode, *BiTree;

typedef struct ThreadNode{
    ElemType data;
    struct ThreadNode *lchild, *rchild;
    int ltag, rtag;  // 左右线索标志  0 指向的是孩子  1 指向的是线索

}ThreadNode, *ThreadTree;